package com.lsh.payment.core.util.pay.alipay;

/**
 * 类名：AlipaySubmit
 * 功能：支付宝各接口请求提交类
 * 详细：构造支付宝各接口表单HTML文本，获取远程HTTP数据
 */

@Deprecated
public class AlipaySubmit {

//    /**
//     * 生成签名结果
//     *
//     * @param sPara 要签名的数组
//     * @return 签名结果字符串
//     */
//    public static String buildRequestMysign(Map<String, String> sPara) {
//        //把数组所有元素，按照“参数=参数值”的模式用“&”字符拼接成字符串
//        String prestr = AlipayCore.createLinkString(sPara);
//        String mysign = "";
//        if (AliPayConfig.sign_type.equals("RSA")) {
//            mysign = RSAUtil.sign(prestr, AliPayConfig.private_key, AliPayConfig.input_charset);
//        }
//        return mysign;
//    }

//    /**
//     * 生成要请求给支付宝的参数数组
//     *
//     * @param sParaTemp 请求前的参数数组
//     * @return 要请求的参数数组
//     */
//    private static Map<String, String> buildRequestPara(Map<String, String> sParaTemp) {
//        //除去数组中的空值和签名参数
//        Map<String, String> sPara = AlipayCore.paraFilter(sParaTemp);
//        //生成签名结果
//        String mysign = buildRequestMysign(sPara);
//
//        //签名结果与签名方式加入请求提交参数组中
//        sPara.put("sign", mysign);
//        sPara.put("sign_type", AliPayConfig.sign_type);
//
//        return sPara;
//    }

//    /**
//     * 建立请求，以表单HTML形式构造（默认）
//     *
//     * @param sParaTemp     请求参数数组
//     * @param strMethod     提交方式。两个值可选：post、get
//     * @param strButtonName 确认按钮显示文字
//     * @return 提交表单HTML文本
//     */
//    public static String buildRequest(Map<String, String> sParaTemp, String strMethod, String strButtonName) {
//        //待请求参数数组
//        Map<String, String> sPara = buildRequestPara(sParaTemp);
//        List<String> keys = new ArrayList<String>(sPara.keySet());
//
//        StringBuffer sbHtml = new StringBuffer();
//
//        sbHtml.append("<form id=\"alipaysubmit\" name=\"alipaysubmit\" action=\"" + AliPayConfig.ALIPAY_GATEWAY_NEW
//                + "_input_charset=" + AliPayConfig.input_charset + "\" method=\"" + strMethod
//                + "\">");
//
//        for (int i = 0; i < keys.size(); i++) {
//            String name = (String) keys.get(i);
//            String value = (String) sPara.get(name);
//
//            sbHtml.append("<input type=\"hidden\" name=\"" + name + "\" value=\"" + value + "\"/>");
//        }
//
//        //submit按钮控件请不要含有name属性
//        sbHtml.append("<input type=\"submit\" value=\"" + strButtonName + "\" style=\"display:none;\"></form>");
//        sbHtml.append("<script>document.forms['alipaysubmit'].submit();</script>");
//
//        return sbHtml.toString();
//    }

//    /**
//     * 建立请求，构造请求url
//     *
//     * @param sParaTemp 请求参数数组
//     * @return 提交表单HTML文本
//     */
//    public static String buildRequestUrl(String api, Map<String, String> sParaTemp) throws Exception {
//        //待请求参数数组
//        Map<String, String> sPara = buildRequestPara(sParaTemp);
//        StringBuffer sbHtml = new StringBuffer();
//        sbHtml.append(api).append("?");
//
//        for (Map.Entry<String, String> entry : sPara.entrySet()) {
//            sbHtml.append(entry.getKey()).append("=").append(java.net.URLEncoder.encode(entry.getValue(), "utf-8")).append("&");
//        }
//        sbHtml.deleteCharAt(sbHtml.length() - 1);
//        return sbHtml.toString();
//    }
//
//    /**
//     * 建立请求，构造请求url
//     *
//     * @param sParaTemp 请求参数数组
//     * @return 提交表单HTML文本
//     */
//    public static String buildRequestUrl(Map<String, String> sParaTemp) throws Exception {
//        //待请求参数数组
//        Map<String, String> sPara = buildRequestPara(sParaTemp);
//        StringBuffer sbHtml = new StringBuffer();
//
//        for (Map.Entry<String, String> entry : sPara.entrySet()) {
//            sbHtml.append(entry.getKey()).append("=").append(java.net.URLEncoder.encode(entry.getValue(), "utf-8")).append("&");
//        }
//        sbHtml.deleteCharAt(sbHtml.length() - 1);
//        return sbHtml.toString();
//    }
    
}
